/*
NO OTHER WARRANTIES.  PRINCIPE SOFTWARE DOES NOT WARRANT
THAT THE SOFTWARE IS ERROR FREE.
PRINCIPE SOFTWARE DISCLAIMS ALL OTHER WARRANTIES WITH RESPECT
TO THE SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT
LIMITED TO IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR
A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS.
SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OF IMPLIED WARRANTIES
OR LIMITATIONS ON HOW LONG AN IMPLIED WARRANTY MAY LAST, OR THE
EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES,
SO THE ABOVE LIMITATIONS OR EXCLUSIONS MAY NOT APPLY TO YOU.
THIS WARRANTY GIVES YOU SPECIFIC LEGAL RIGHTS AND YOU MAY
ALSO HAVE OTHER RIGHTS WHICH VARY FROM JURISDICTION TO JURISDICTION.

(c) Copyright 2013 Principe Software
All Rights Reserved

*/
#ifndef TOK_H
#define TOK_H

#include <Windows.h>
#include <tchar.h>

//////////////////////////////////////////////////////////////////
// Tok: Tokens
//////////////////////////////////////////////////////////////////
enum Tok
{
    TOK_NONE=999
};

//////////////////////////////////////////////////////////////////
// TokenType: Token type
//////////////////////////////////////////////////////////////////
enum TokType
{
    TT_SHORT,
    TT_INT,
    TT_LONG,
    TT_FLOAT,
    TT_DOUBLE,
    TT_LONG_DOUBLE,
    TT_STRING,
    TT_TOK
};;

///////////////////////////////////////////////////////////////////
// TokData: Data
///////////////////////////////////////////////////////////////
union TokData
{
    short short_data;
    int int_data;
    long long_data;
    float float_data;
    double double_data;
    long double long_double_data;
    Tok tok;
};
#endif // TOK_H
